# Elementos estructurantes en OpenCV
kernel_rect = cv2.getStructuringElement(cv2.MORPH_RECT, (5,5))
kernel_ellipse = cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (5,5))
kernel_cross = cv2.getStructuringElement(cv2.MORPH_CROSS, (5,5))
# Visualización
fig, axes = plt.subplots(1, 3, figsize=(12,3))
titles = ['Rectangular 5×5', 'Elíptico 5×5', 'Cruz 5×5']
kernels = [kernel_rect, kernel_ellipse, kernel_cross]
for ax, kernel, title in zip(axes, kernels, titles):
ax.imshow(kernel, cmap='gray', interpolation='nearest')
ax.set_title(title)
ax.axis('off')
# Mostrar valores
for i in range(kernel.shape[0]):
for j in range(kernel.shape[1]):
ax.text(j, i, str(kernel[i,j]),
ha='center', va='center', color='red', fontsize=10)
plt.tight_layout()
plt.show()